A direct printing technique (e.g., PictBridge) of directly connecting a digital camera and a printer by a physical interface, and directly outputting an image captured by the digital camera from the printer without intervening a PC is known. At this moment, a USB (Universal Serial Bus) is the mainstream of the physical interface. Such direct printing technique, however, does not depend on the type of physical interface, and can also use a wireless interface in principle.
Depending on a protocol for a direct printing technique, a digital camera may not be able to release a connection until print processing by a printer is completed even if image data transfer is complete. If, for example, a connection between the digital camera and the printer is disconnected during the print processing, a print error occurs, and a paper sheet midway through the print processing is discharged.
To solve this problem, Japanese Patent Laid-Open No. 2004-129218 discloses a technique of causing a printer to transmit, to a digital camera, a command representing that the printer has received all image data. This makes it possible to detach the digital camera (the cable that connects the digital camera) from the printer without waiting for completion of printing.
The technique disclosed in Japanese Patent Laid-Open No. 2004-129218 described above allows detaching the digital camera from the printer without waiting for completion of printing on the printer side. However, the printer cannot execute print processing using the direct printing technique between it and the next digital camera until the print processing is completed. That is, although the connection port on the printer side is vacant, communication using that connection port cannot start before the completion of execution of the print processing.
This forces a user, who wants to start printing for the next digital camera, to wait until the print processing is completed to enable a connection on the printer side. In addition, the display device on the digital camera side displays, for example, “disconnected” at this time. For this reason, the user repeatedly performs connection processing.